﻿using Admin.NET.Core;
using System.ComponentModel.DataAnnotations;

namespace IotFun.Views.ProgramAll.Dto;

/// <summary>
/// 程序管理基础输入参数
/// </summary>
public class ProgramAllBaseInput
{
    /// <summary>
    /// 名称
    /// </summary>
    public virtual string name { get; set; }

    /// <summary>
    /// 程序部署路径
    /// </summary>
    public virtual string runpath { get; set; }

    /// <summary>
    /// 程序类型
    /// </summary>
    public virtual int programtype { get; set; }

    /// <summary>
    /// IP端口
    /// </summary>
    public virtual string ipaddress { get; set; }

    /// <summary>
    /// 备注
    /// </summary>
    public virtual string remark { get; set; }

    /// <summary>
    /// 启动时间
    /// </summary>
    public virtual DateTime runtime { get; set; }

    /// <summary>
    /// 创建时间
    /// </summary>
    public virtual DateTime createtime { get; set; }

    /// <summary>
    /// 更新时间
    /// </summary>
    public virtual DateTime updatetime { get; set; }

    /// <summary>
    /// 创建者Id
    /// </summary>
    public virtual long createuserid { get; set; }

    /// <summary>
    /// 修改者Id
    /// </summary>
    public virtual long updateuserid { get; set; }

    /// <summary>
    /// 软删除
    /// </summary>
    public virtual bool isdelete { get; set; }

}

/// <summary>
/// 程序管理分页查询输入参数
/// </summary>
public class ProgramInfoInput : BasePageInput
{
    /// <summary>
    /// 名称
    /// </summary>
    public string name { get; set; }

}

/// <summary>
/// 程序管理增加输入参数
/// </summary>
public class AddProgramAllInput : ProgramAllBaseInput
{
}

/// <summary>
/// 程序管理删除输入参数
/// </summary>
public class DeleteProgramAllInput : BaseIdInput
{
    /// <summary>
    /// Id
    /// </summary>
    [Required(ErrorMessage = "Id不能为空")]
    public long id { get; set; }

}

/// <summary>
/// 程序管理更新输入参数
/// </summary>
public class UpdateProgramAllInput : ProgramAllBaseInput
{
    /// <summary>
    /// Id
    /// </summary>
    [Required(ErrorMessage = "Id不能为空")]
    public long id { get; set; }

}

/// <summary>
/// 程序管理主键查询输入参数
/// </summary>
public class QueryByIdProgramAllInput : DeleteProgramAllInput
{

}
